/**
 * 搜索组件配置项选项接口
 */
export interface ISearchCompConfigItemOption {
  /** 选项标签 */
  label: string
  /** 选项值 */
  value: string | number
}

/**
 * 搜索组件配置项接口
 */
interface ISearchCompConfigItem {
  /** 配置项类型 */
  type: 'input' | 'date-picker' | 'select'

  /** 配置项标签 */
  label: string

  /** 配置项属性 */
  prop: string

  /** 配置项占位符 */
  placeholder?: string

  /** 配置项宽度 */
  initialValue?: number | string

  /** 配置项选项 */
  options?: ISearchCompConfigItemOption[]
}

/**
 * 搜索组件配置接口
 */
export interface ISearchCompConfig {
  /** 搜索组件label宽度 */
  labelWidth?: number | string
  /** 搜索组件按钮 */
  formItems: ISearchCompConfigItem[] // 搜索组件配置项
}

/**
 * 搜索组件属性接口
 */
export interface ISearchCompProps {
  /** 搜索组件配置项接口 */
  searchConfig: ISearchCompConfig
}

// type Iss<T> = T extends keyof ISearchCompConfigItem['prop'] ? T : never
